/*
 * PrenotazionePK.java
 * Bean utilizzato per rappresentare la chiave primaria dell'entity bean Prenotazione
 */

package ejb;

import java.io.Serializable;
import javax.persistence.Column;
import javax.persistence.Embeddable;

/**
 * Rappresenta la chiave dell'entity bean Prenotazione,
 * questo è formato da PrenotazionePK(codEvento, mailUtente).
 * Implementa inotre tutti metodi set e get per la gestione dell'entità prenotazione
 * @author Rosario Salone
 */

@Embeddable
public class PrenotazionePK implements Serializable {
    @Column(name = "COD_EVENTO", nullable = false)
    private int codEvento;
    @Column(name = "EMAIL", nullable = false)
    private String email;

    public PrenotazionePK() {
    }

    public PrenotazionePK(int codEvento, String email) {
        this.codEvento = codEvento;
        this.email = email;
    }

    public int getCodEvento() {
        return codEvento;
    }

    public void setCodEvento(int codEvento) {
        this.codEvento = codEvento;
    }

    public String getEmail() {
        return email;
    }

    public void setEmail(String email) {
        this.email = email;
    }

    @Override
    public int hashCode() {
        int hash = 0;
        hash += (int) codEvento;
        hash += (email != null ? email.hashCode() : 0);
        return hash;
    }

    @Override
    public boolean equals(Object object) {
        // TODO: Warning - this method won't work in the case the id fields are not set
        if (!(object instanceof PrenotazionePK)) {
            return false;
        }
        PrenotazionePK other = (PrenotazionePK) object;
        if (this.codEvento != other.codEvento) {
            return false;
        }
        if ((this.email == null && other.email != null) || (this.email != null && !this.email.equals(other.email))) {
            return false;
        }
        return true;
    }

    @Override
    public String toString() {
        return "ejb.PrenotazionePK[codEvento=" + codEvento + ", email=" + email + "]";
    }

}
